﻿<%@ Page CodeFileBaseClass="AliCMS.Lib.AdminPageBase" %>
<script language="c#" runat="server">
protected string Condition()
{
	StringBuilder condition = new StringBuilder();
	string and = String.Empty;

	#region 是否回收
	string isRecycled = Request.QueryString["IsRecycled"];
	if (isRecycled == null)
		condition.Append(Alias.Music.IsDeleted + "=false");
	else if (isRecycled != String.Empty)
		condition.Append(Alias.Music.IsDeleted + "=" + isRecycled);
	#endregion

	if (and == String.Empty && condition.Length != 0)
		and = " AND ";

	#region 是否审核
	string isChecked = Request.QueryString["IsChecked"];
	if (isChecked == null)
		condition.Append(and + Alias.Music.IsChecked + "=true");
	else if (isChecked != String.Empty)
		condition.Append(and + Alias.Music.IsChecked + "=" + isChecked);
	#endregion

	if (and == String.Empty && condition.Length != 0)
		and = " AND ";

	#region 是否推荐
	string isRecommended = Request.QueryString["IsRecommended"];
	if (!String.IsNullOrEmpty(isRecommended))
		condition.Append(and + Alias.Music.IsRecommended + "=" + isRecommended);
	#endregion

	if (and == String.Empty && condition.Length != 0)
		and = " AND ";

	#region 是否置顶
	string isHeld = Request.QueryString["IsHeld"];
	if (!String.IsNullOrEmpty(isHeld))
		condition.Append(and + Alias.Music.IsHeld + "=" + isHeld);
	#endregion

	if (and == String.Empty && condition.Length != 0)
		and = " AND ";

	#region 类别
	string categoryID = Request.QueryString["CategoryID"];
	if (!String.IsNullOrEmpty(categoryID))
	{
		if (Convert.ToBoolean(Request.QueryString["IncludeSubCategory"]))
		{
			condition.Append(and + Alias.Music.IncludeSubCategory + "=" + categoryID);
		}
		else
		{
			if (categoryID == "0")
				condition.Append(and + Alias.Music.CategoryID + " IS NULL");
			else
				condition.Append(and + Alias.Music.CategoryID + "=" + categoryID);
		}
	}
	#endregion

	if (and == String.Empty && condition.Length != 0)
		and = " AND ";

	#region 地区
	string regionID = Request.QueryString["RegionID"];
	if (!String.IsNullOrEmpty(regionID))
	{
		if (Convert.ToBoolean(Request.QueryString["IncludeSubRegion"]))
		{
			condition.Append(and + Alias.Music.IncludeSubRegion + "=" + regionID);
		}
		else
		{
			if (regionID == "0")
				condition.Append(and + Alias.Music.RegionID + " IS NULL");
			else
				condition.Append(and + Alias.Music.RegionID + "=" + regionID);
		}
	}
	#endregion

	if (and == String.Empty && condition.Length != 0)
		and = " AND ";

	#region 语言
	string languageID = Request.QueryString["LanguageID"];
	if (!String.IsNullOrEmpty(languageID))
	{
		if (languageID == "0")
			condition.Append(and + Alias.Music.LanguageID + " IS NULL");
		else
			condition.Append(and + Alias.Music.LanguageID + "=" + languageID);
	}
	#endregion

	if (and == String.Empty && condition.Length != 0)
		and = " AND ";

	#region 关键词
	string keyword = Request.QueryString["Keyword"];
	if (!String.IsNullOrEmpty(keyword))
	{
		switch (Request.QueryString["KeywordType"])
		{
			case "Name":
				condition.Append(and + Alias.Music.Name + " LIKE '%" + keyword + "%'");
				break;
			case "AlbumName":
				condition.Append(and + Alias.Music.AlbumNames + " LIKE '%" + keyword + "%'");
				break;
			case "PersonName":
				condition.Append(and + Alias.Music.PersonNames + " LIKE '%" + keyword + "%'");
				break;
			case "TagName":
				condition.Append(and + Alias.Music.TagNames + " LIKE '%" + keyword + "%'");
				break;
		}
	}
	#endregion
	
	return condition.ToString();
}

protected string Sort()
{
	string sort = String.Empty;
	switch (Request.QueryString["Sort"])
	{
		case "1":
			sort = Alias.Music.UpdateTime + " DESC";
			break;
		case "2":
			sort = Alias.Music.UpdateTime + " ASC";
			break;
		case "3":
			sort = Alias.Music.HitCount + " DESC";
			break;
		case "4":
			sort = Alias.Music.HitCount + " ASC";
			break;
		case "5":
			sort = Alias.Music.Recommend + " DESC";
			break;
		case "6":
			sort = Alias.Music.Recommend + " ASC";
			break;
		case "7":
			sort = Alias.Music.Hold + " DESC";
			break;
		case "8":
			sort = Alias.Music.Hold + " ASC";
			break;
		case "9":
			sort = Alias.Music.InnerID + " DESC";
			break;
		case "10":
			sort = Alias.Music.InnerID + " ASC";
			break;
		case "11":
			sort = Alias.Music.Up + " DESC";
			break;
		case "12":
			sort = Alias.Music.Up + " ASC";
			break;
		case "13":
			sort = Alias.Music.Down + " DESC";
			break;
		case "14":
			sort = Alias.Music.Down + " ASC";
			break;
		case "15":
			sort = Alias.Music.Error + " DESC";
			break;
		case "16":
			sort = Alias.Music.Error + " ASC";
			break;
		default:
			sort = Alias.Music.UpdateTime + " DESC";
			break;
	}
	
	return sort;
}
</script>
<table border="0" cellpadding="4" cellspacing="1" class="ListTable">
	<thead>
		<tr>
			<th width="40">选择</th>
			<th>名称</th>
			<th width="110">更新日期</th>
			<th width="40">人气</th>
			<th width="40">顶</th>
			<th width="40">踩</th>
			<th width="40">错误</th>
		</tr>
	</thead>
	<tbody>
		<ali:List ID="List" Object="Music" Page="PageNumber" PageSize="20" Condition="Condition()" Sort="Sort()" Validate="True">
			<ali:Record>
				<tr id="Row<%=InnerID%>">
					<td><input type="checkbox" name="Sel" value="<%=InnerID%>" /></td>
					<td class="<%=PageLang%>Font"><a href="../../IlgharCMS.MusicModule/music/edit.aspx?ID=<%=InnerID%>"><%=Name%></a></td>
					<td><%=UpdateTime%></td>
					<td><%=HitCount%></td>
					<td><%=Up%></td>
					<td><%=Down%></td>
					<td><%=Error%></td>
				</tr>
			</ali:Record>
		</ali:List>
	</tbody>
</table>
<ali:Pagination Page="PageNumber" PageSize="20" RecordCount="List[RecordCount]">
	<div class="Pagination">
		<div class="Left">共 <%=RecordCount%> 条 当前显示第 <%=PageNumber%> 页 第 <%=RangeLower%>-<%=RangeUpper%> 条 </div>
		<div class="Right">
			<ali:FirstPage>
				<ali:Yes>
					<img src="<%=ImagePath%>pagination/first_page_off.gif"/>
					<img src="<%=ImagePath%>pagination/previous_page_off.gif"/>
				</ali:Yes>
				<ali:No>
					<a href="javascript:Go(1)"><img src="<%=ImagePath%>pagination/first_page_on.gif"/></a>
					<a href="javascript:Go(<%=PageNumber%> - 1)" id="PrevPage"><img src="<%=ImagePath%>pagination/previous_page_on.gif"/></a>
				</ali:No>
			</ali:FirstPage>
			<ali:CurrentPage Range="5">
				<ali:Yes>
					<span class="Current"><%=Index%></span>						
				</ali:Yes>
				<ali:No>
					<a href="javascript:Go(<%=Index%>)">[<%=Index%>]</a>
				</ali:No>
			</ali:CurrentPage>
			<ali:LastPage>
				<ali:Yes>
					<img src="<%=ImagePath%>pagination/next_page_off.gif"/>
					<img src="<%=ImagePath%>pagination/last_page_off.gif"/>
				</ali:Yes>
				<ali:No>
					<a href="javascript:Go(<%=PageNumber%> + 1)" id="NextPage"><img src="<%=ImagePath%>pagination/next_page_on.gif"/></a>
					<a href="javascript:Go(<%=PageCount%>)"><img src="<%=ImagePath%>pagination/last_page_on.gif"/></a>
				</ali:No>
			</ali:LastPage>
		</div>
	</div>
</ali:Pagination>